package com.twinkle.abmsspringboot.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * ABMS - SpringBoot
 * <p>mapper 用户信息-联系人信息关联表</p>
 * <p>mapper -> interface :UCMapper -> implement :uc-mapper.xml</p>
 * <p>
 * 更新了形参变量名
 *
 * @author Twinkle
 * @since 2 Aug. 2021
 * @since 4 Aug. 2021
 */
@Mapper
public interface UCMapper {
    /**
     * 按联系人 ID 查询该联系人在该表中的条目 ID
     *
     * @param contactsId 联系人信息 ID
     * @return 关联表中对应条目的 ID
     */
    Integer selectUC(@Param("contactsId") Integer contactsId);

    /**
     * 向关联表中增加新条目
     * <p>
     * 执行结果值大于 0，执行成功；反之，执行失败
     *
     * @param userinfoId 用户信息 ID
     * @param contactsId 联系人信息 ID
     * @return 执行结果
     */
    int insertUC(@Param("userinfoId") Integer userinfoId, @Param("contactsId") Integer contactsId);

    /**
     * 从关联表中删除条目
     * <p>
     * 执行结果值大于 0，执行成功；反之，执行失败
     *
     * @param contactsId 联系人信息 ID
     * @return 执行结果
     */
    int deleteUC(@Param("contactsId") Integer contactsId);
}
